最近发现的4个Python命令行可视化库,太酷了!
The following article is from 法纳斯特 Author 小F
本文转载自公众号【法纳斯特】,喜欢他的文章可以点击上方卡片关注哈~
(注意:文末赠书福利)
通常大家都是在自己的电脑上跑程序,直接是可以可视化相应的结果。
如果是在服务器上的话,使用终端,是不太方便查看结果。
今天,就给大家介绍4个可以在命令行中使用的Python库。
分别是Bashplotlib、tqdm、PrettyTable、Colorama。
① 使用Bashplotlib在命令行中绘图
如果你想在命令行窗口中绘制数据的情况,那么Bashplotlib是非常适合的。
首先安装Bashplotlib这个库。
pip install bashplotlib -i https://mirror.baidu.com/pypi/simple/
下面我们可以使用Bashplotlib来绘制一组正态分布的数据图表。
使用NumPy来生成一个正态分布数字列表。
如果还没有NumPy,同样可以使用pip安装。
pip install numpy -i https://mirror.baidu.com/pypi/simple/
使用Bashplotlib的直方图绘图函数plot_hist。
import numpy as np
from bashplotlib.histogram import plot_hist
rand_nums = np.random.normal(size=1000, loc=0, scale=1)
plot_hist(rand_nums, bincount=100)
结果如下。
确实是可以在终端可视化数据。
通过查看源代码,得知相关参数设置。
② 使用TQDM添加进度条
有时运行一个耗时较长的程序,我们不能看到程序的运行进度,给人的体验不是很好。
这里可以使用TQDM,直接在命令行中可视化程序的运行进度。
使用pip命令安装TQDM。
pip install tqdm -i https://mirror.baidu.com/pypi/simple/
下面来一个示例吧~
让我们遍历数字0至1000,并添加一个小的延迟,得以查看TQDM进度条的工作情况。
from tqdm import trange
from time import sleep
for i in trange(1000):
sleep(0.01)
结果如下。
给人提供了一个预期,不会变的那么遥遥无期。
③ 使用PrettyTable打印漂亮的表格
当我们在终端输出表格数据的时候,排版总是乱乱的。
使用PrettyTable,便能在终端输出易读的、类似于表格格式的数据展现。
安装。
pip install prettytable -i https://mirror.baidu.com/pypi/simple/
让我们创建一个国家城市的人口表格。
from prettytable import PrettyTable
table = PrettyTable()
table.field_names = ['Country', 'Capital', 'Population']
table.add_row(["China", "Beijing", 21893095])
table.add_row(["Russia", "Moscow", 12195221])
table.add_row(["Germany", "Berlin", 3748148])
table.add_row(["Spain", "Madrid", 3223334])
table.add_row(["Finland", "Helsinki", 631695])
print(table)
结果如下,确实变得清晰明了~
可惜的是,并不能很好的支持中文。
同时,还可对表格内容进行排序等操作。
table.sortby = 'Capital'
print(table)
以首都数据排序为例。
可以看到,柏林排在了前头。
还可生成HTML代码,将表格内容插入到网站中。
print(table.get_html_string())
结果如下。
新建一个HTML文件,将表格放到body标签下。
再在浏览器打开这个文件,结果如下。
④ 使用Colorama为您的命令行着色
使用Colorama为您的程序输出,在命令行中有不一样的颜色显示,更快了解程序的运行情况。
使用pip安装。
pip install colorama -i https://mirror.baidu.com/pypi/simple/
支持三种不同的颜色类型。
foreground,是文本颜色
background,是背景颜色
style,是一些额外的颜色样式
通过适当地配置,可以给你的Python命令行应用程序带来方便。
接下来让我们看一些例子。
首先将文本更改为绿色,以便以绿色字体显示“任务已完成”。
这可以通过在Fore渲染模式中将前景色更改为绿色来完成:
from colorama import Fore
print(Fore.GREEN)
print("Task completed")
结果如下
然后,让红色背景色的高亮表示错误,通过设置背景渲染模式Back到RED:
from colorama import Back
print(Back.RED)
print("Error occurred!")
结果
你还可以通过更改渲染样式来使文本变暗:
from colorama import Style
print(Style.DIM)
print("Not that important")
结果如下
最后,如果你想复原之前的设置,重置操作如下。
print(Style.RESET_ALL)
print('hello')
好了,本期的分享就到此结束了,有兴趣的小伙伴可以自行去实践学习。